package com.funong.matrix.biz.system.facade.impl;

import cn.hutool.core.lang.tree.Tree;
import com.funong.matrix.biz.base.entity.SysDictEntity;
import com.funong.matrix.biz.system.domain.SysDictDomainDao;
import com.funong.matrix.biz.system.facade.SysDictFacade;
import com.funong.matrix.core.dto.QueryDTO;
import com.funong.matrix.core.dto.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * @author : NaNa
 * @since : 2023-05-23 18:34
 **/
@Slf4j
@Service
public class SysDictFacadeImpl implements SysDictFacade {
    @Resource
    private SysDictDomainDao sysDictDomainDao;

    @Override
    public Result queryDict(QueryDTO<SysDictEntity> queryDTO) {
        return sysDictDomainDao.queryDict(queryDTO);
    }

    @Override
    public SysDictEntity getDictById(Integer id) {
        return sysDictDomainDao.getDictById(id);
    }

    @Override
    public SysDictEntity saveDict(SysDictEntity sysDictEntity) {
        return sysDictDomainDao.saveDict(sysDictEntity);
    }

    @Override
    public SysDictEntity updateDict(SysDictEntity sysDictEntity) {
        return sysDictDomainDao.updateDict(sysDictEntity);
    }

    @Override
    public Boolean deleteDict(List<Integer> idList) {
        return sysDictDomainDao.deleteDict(idList);
    }

    @Override
    public List<SysDictEntity> getByParentCode(int systemId, String parentCode) {
        return sysDictDomainDao.getByParentCode(systemId, parentCode);
    }

    @Override
    public List<Tree<Integer>> querySelect(Integer systemId) {
        return sysDictDomainDao.querySelect(systemId);
    }
}
